#include "stdio.h"
#include "file.h"
#include "stm32f10x.h"
void Delay_us(uint16_t us);
void Delay_ms(uint16_t ms);

int main()
{
	RCC->APB2ENR|=RCC_APB2ENR_IOPAEN;
	
	GPIOA->CRL&=~GPIO_CRL_CNF0;
	GPIOA->CRL|=GPIO_CRL_MODE0;
	GPIOA->CRL&=~GPIO_CRL_CNF1;
	GPIOA->CRL|=GPIO_CRL_MODE1;
	GPIOA->CRH&=~GPIO_CRH_CNF8;
	GPIOA->CRH|=GPIO_CRH_MODE8;

	
	
	while(1)
	{
		GPIOA->ODR&=~GPIO_ODR_ODR0;
		Delay_ms(500);
		GPIOA->ODR|=GPIO_ODR_ODR0;
		
		GPIOA->ODR&=~GPIO_ODR_ODR1;
		Delay_ms(500);
		GPIOA->ODR|=GPIO_ODR_ODR1;

		GPIOA->ODR&=~GPIO_ODR_ODR8;
		Delay_ms(500);
		GPIOA->ODR|=GPIO_ODR_ODR8;
	}
}

void Delay_us(uint16_t us)
{
	SysTick->LOAD = 72*us;

	SysTick->CTRL|=0x05;

	while((SysTick->CTRL & SysTick_CTRL_COUNTFLAG)==0)
	{

	}
	SysTick->CTRL&=~SysTick_CTRL_ENABLE;
}

void Delay_ms(uint16_t ms)
{
	while(ms--)
	{
		Delay_us(1000);
	}
}
